import docx
import json

# 定义Word文档路径常量 - 请修改为你的Word文档实际路径
WORD_FILE_PATH = "D:\\工作档案\\2025\\中心组学习\\8月\\习近平总书记关于意识形态工作的重要论述.docx"


def convert_word_to_json(file_path):
    """
    将Word文档转换为JSON格式，每行一个JSON对象，包含content键
    :param file_path: Word文档路径 
    :return: 包含文档段落的JSON字符串
    """
    try:
        # 打开Word文档
        doc = docx.Document(file_path)
        # 创建一个空数组存储JSON对象
        json_objects = []

        # 遍历文档中的每一段
        for para in doc.paragraphs:
            # 去除段落前后的空白字符
            text = para.text.strip()
            # 如果段落不为空，则添加到数组中
            if text:
                json_objects.append({"content": text})

        # 生成格式化的JSON字符串
        json_str = json.dumps(json_objects, ensure_ascii=False, indent=2)
        # for obj in json_objects:
        #     json_str += json.dumps(obj, ensure_ascii=False) + "\n"
        
        return json_str

    except Exception as e:
        return f"处理文档时出错: {str(e)}"


if __name__ == "__main__":
    # 调用函数并打印结果
    result = convert_word_to_json(WORD_FILE_PATH)
    print(result)
    
    # 将结果保存到JSON文件
    with open("output.json", "w", encoding="utf-8") as f:
        f.write(result)
    
    print(f"转换完成！结果已保存到output.json文件。")